#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
//int main() {
//int num1 = 1;
//int num2 = 1;
//int num3 = 0;
//while (num1 < 10)
//{
//	num3 = num2 * num1;
//	printf("%d*%d=%d\n", num2, num1, num3);
//	num1++;
//}
//	return 0;
//
//}
//int main()
//{
//	int i = 1;
//	for (; i < 10; i++)
//	{
//		int j = 1;
//		for (; j <= i; j++)
//		{
//			printf("%d*%d=%d ", j, i, i * j);
//		}
//		printf("\n");
//	}
//	
//	return 0;
//}
//int main()
//{
//	double sum = 0;
//	int j = 1;
//	for (int i = 1; i <= 100; i++)
//	{
//		sum += 1.0 / i * j;
//		j = -j;
//		
//	}
//printf("%lf" , sum);
//	return 0;
//}
//int main()
//{
//	int i = 1;
//	int j = 0;
//	for (; i <= 100; i++)
//	{
//		if (i % 10 == 9) {
//			j++;
//		}
//		if (i / 10 == 9) {
//			j++;
//		}
//	}
//	printf("%d\n", j);
//	return 0;
//}
//int main()
//{
//	for (int year = 1000; year <= 2000; year++)
//	{
//		if ((year % 4 == 0) && (year / 100 != 0) || (year % 400 == 0))
//		{ 
//			printf("%d ", year);
//		}
//	}
//	return 0;
//}
int main()
{
	int a = 0;
	int b = 0;
	int c = a % b;
	scanf("%d%d", &a, &b);
	while (c != 0)
	{
		a = b;
		b = c;
		c = a % b;
	}
	 printf("%d", b);

	return 0;

}